//
//  UIImage+SYExtension.h
//  siyanone
//
//  Created by LK-IOS on 2018/3/20.
//  Copyright © 2018年 LK-News. All rights reserved.
//


#import <UIKit/UIKit.h>


typedef void (^GIFimageBlock)(UIImage *GIFImage);



@interface UIImage (SYExtension)


/**
 这个方法通过传递过来要加载图片的名称,返回一个没有经过系统渲染的图片
 
 @param imageName 图片名称
 @return 返回不经过系统渲染的图片
 */
+(UIImage *)imageWIthOriginalImage:(NSString *)imageName;


/**
 返回一张圆形图片
 @return 返回值
 */
-(UIImage *)circleImage;



/**
 修改图片大小
 
 @param size 要修改到的大小
 @return 返回值
 */
- (UIImage *)scaleToSize:(CGSize)size;


/**
 按比例缩放
 
 @param sourceImage 原始图片
 @param size 缩放的大小
 @return 返回值
 */
-(UIImage *) imageCompressForSize:(UIImage *)sourceImage targetSize:(CGSize)size;


/**
 指定宽度按比例缩放
 
 @param sourceImage 原始图片
 @param defineWidth 指定的宽度
 @return 返回值
 */
-(UIImage *) imageCompressForWidth:(UIImage *)sourceImage targetWidth:(CGFloat)defineWidth;


/**
 返回一张可以随意拉伸不变形的图片
 
 @param name 图片名称
 @return 返回值
 */
+ (UIImage *)resizableImage:(NSString *)name;

//
/**
 根据颜色生成一张尺寸为1*1的相同颜色图片
 
 @param color 颜色
 @return 返回值
 */
+ (UIImage *)imageWithColor:(UIColor *)color;



/**
 根据本地GIF图片名 获得GIF image对象
 */
+ (UIImage *)imageWithGIFNamed:(NSString *)name;



/**
 根据一个GIF图片的data数据 获得GIF image对象
 */
+ (UIImage *)imageWithGIFData:(NSData *)data;


/**
 根据一个GIF图片的URL 获得GIF image对象
 */
+ (void)imageWithGIFUrl:(NSString *)url and:(GIFimageBlock)gifImageBlock;



//@param imageSize 图片大小
//@param logoImageSize logo大小
/**
 根据urlString生成二维码
 */
+ (UIImage *)qrImageForString:(NSString *)string imageSize:(CGFloat)Imagesize logoImageSize:(CGFloat)waterImagesize;

//根据图片获取图片的主色调
+(UIColor*)mostColor:(UIImage*)image;


@end
